package com.atguigu.juc.day04.cf;

import com.atguigu.juc.day04.pool.Demo01MyPool;

import java.util.concurrent.CompletableFuture;
import java.util.concurrent.ExecutorService;

/**
 * 说明：CompletableFuture 默认使用内置线程池：ForkJoinPool
 * 改进：使用我们指定的线程池就不会发生有的任务执行不了的问题。
 */
public class Demo03AsyncTaskWithoutResult {

    public static void main(String[] args) {

        // 0、获取自定义线程池对象
        ExecutorService executorService = Demo01MyPool.getExecutorService();

        // 1、封装异步任务
        Runnable runnable = ()->{
            System.out.println(Thread.currentThread().getName() + " is working.");
        };

        // 2、静态方法：runAsync() 封装异步任务
        // 说明：CompletableFuture 支持链式调用，如有需要可以在调用方法后继续调用其它方法
        CompletableFuture.runAsync(runnable, executorService);

    }

}
